Skip to content

Build: Bump Node.js to 22.22.3#34883

Merged
valentinpalkovic merged 3 commits into
nextfrom
valentin/bump-node-22.22.3
May 27, 2026
Merged

Build: Bump Node.js to 22.22.3#34883
valentinpalkovic merged 3 commits into
nextfrom
valentin/bump-node-22.22.3

Conversation

@valentinpalkovic
Copy link
Copy Markdown
Contributor

@valentinpalkovic valentinpalkovic commented May 22, 2026

What I did

The Angular CLI now requires a minimum Node.js version of v22.22.3 (or v24.15.0 / v26.0.0). Our pinned version v22.22.1 fails Angular prerelease sandbox generation with:

Node.js version v22.22.1 detected. The Angular CLI requires a minimum Node.js version of v22.22.3 or v24.15.0 or v26.0.0.

This bumps the pinned Node.js version from 22.22.1 to 22.22.3 everywhere it is hardcoded:

  • .nvmrc — the single source of truth consumed by actions/setup-node via node-version-file in all .github/actions/setup-node-and-install based workflows.
  • .github/workflows/nx.yml — switched the NX workflow from a hardcoded node-version: 22 to node-version-file: '.nvmrc' so it stays pinned and consistent with every other workflow.
  • scripts/ci/utils/executors.ts — CircleCI executor images cimg/node:22.22.1 and cimg/node:22.22.1-browsers22.22.3.
  • scripts/ci/sandboxes.ts — the node-version enforced for Angular sandbox CI steps (ensureMinNodeVersion), the exact spot that produced the error above.
  • code/lib/cli-storybook/src/sandbox-templates.ts — comment referencing the minimum supported version.
  • AGENTS.md — contributor-facing Node.js version reference.

No .npmrc exists in the repo, and all other GitHub Actions workflows already resolve Node from .nvmrc via the setup-node-and-install composite action, so no further changes are needed.

This mirrors the previous Node bump (#34079, 22.21.122.22.1), which was done for the same Angular sandbox reason.

Checklist for Contributors

Testing

The changes in this PR are covered in the following automated tests:

  • stories
  • unit tests
  • integration tests
  • end-to-end tests

Manual testing

This is a CI/build configuration change with no application code impact. It is exercised by CI itself: the CircleCI jobs run on the bumped cimg/node:22.22.3 executor images, and the Angular sandbox generation step now installs Node 22.22.3, satisfying the Angular CLI minimum.

To verify locally:

  1. nvm install (or nvm use) — picks up 22.22.3 from .nvmrc.
  2. node --versionv22.22.3.
  3. Generate an Angular sandbox: yarn task sandbox --template angular-cli/default-ts --start-from auto — no longer fails the Angular CLI Node version check.

Documentation

  • Add or update documentation reflecting your changes
  • If you are deprecating/removing a feature, make sure to update MIGRATION.MD

Checklist for Maintainers

  • When this PR is ready for testing, make sure to add ci:normal, ci:merged or ci:daily GH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found in code/lib/cli-storybook/src/sandbox-templates.ts

  • Make sure this PR contains one of the labels below:

    Available labels
    • bug: Internal changes that fixes incorrect behavior.
    • maintenance: User-facing maintenance tasks.
    • dependencies: Upgrading (sometimes downgrading) dependencies.
    • build: Internal-facing build tooling & test updates. Will not show up in release changelog.
    • cleanup: Minor cleanup style change. Will not show up in release changelog.
    • documentation: Documentation only changes. Will not show up in release changelog.
    • feature request: Introducing a new feature.
    • BREAKING CHANGE: Changes that break compatibility in some way with current major version.
    • other: Changes that don't fit in the above categories.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Bumped the minimum Node.js runtime to 22.22.3 across CI, templates, and documentation for consistent runtime behavior.
    • CI workflow now reads the Node.js version from the centralized version file (.nvmrc) instead of a hardcoded value, ensuring future updates apply automatically.

Review Change Stack

@valentinpalkovic valentinpalkovic added build Internal-facing build tooling & test updates ci:normal labels May 22, 2026
@valentinpalkovic valentinpalkovic self-assigned this May 22, 2026
@valentinpalkovic valentinpalkovic added ci:daily Run the CI jobs that normally run in the daily job. and removed ci:normal labels May 22, 2026
@valentinpalkovic valentinpalkovic moved this to In Progress in Core Team Projects May 22, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 22, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: c0d36406-ea93-45b9-a5c4-34e716c00633

📥 Commits

Reviewing files that changed from the base of the PR and between 946dc34 and c095ea4.

📒 Files selected for processing (1)
  • AGENTS.md
✅ Files skipped from review due to trivial changes (1)
  • AGENTS.md

📝 Walkthrough

Walkthrough

Node.js minimum version is updated to 22.22.3 across .nvmrc, the GitHub Actions workflow (now reading .nvmrc), CI sandbox setup, and related documentation/comments.

Changes

Node.js Version Bump

Layer / File(s) Summary
Version source and workflow configuration
/.nvmrc, .github/workflows/nx.yml
.nvmrc updated to 22.22.3; GitHub Actions actions/setup-node now reads Node version from .nvmrc via node-version-file instead of hardcoded node-version: 22.
CI sandbox setup configuration
scripts/ci/sandboxes.ts
When ensureMinNodeVersion is enabled, generated sandbox CI pins Node to 22.22.3 (updated inline comment and pinned value).
Documentation and comments
AGENTS.md, code/lib/cli-storybook/src/sandbox-templates.ts
Agent docs and sandbox template comments updated to reference Node.js 22.22.3.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs


Comment @coderabbitai help to get the list of available commands and usage tips.

The Angular CLI now requires Node.js >= v22.22.3 (or v24.15.0 /
v26.0.0); v22.22.1 fails Angular prerelease sandbox generation.

Bump the pinned version in .nvmrc, the Angular sandbox node-version
CI step, the nx.yml workflow, and AGENTS.md. Angular sandboxes run on
22.22.3 via the node/install CI step, the established mechanism for
enforcing a minimum Node version regardless of the base image.

The CircleCI executor base image is intentionally left on
cimg/node:22.22.1 -- switching it to cimg/node:22.22.3 broke
oxc-parser resolution during sandbox creation across all CI jobs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@storybook-app-bot
Copy link
Copy Markdown

storybook-app-bot Bot commented May 26, 2026

Package Benchmarks

Commit: c095ea4, ran on 27 May 2026 at 10:49:54 UTC

No significant changes detected, all good. 👏

Comment thread AGENTS.md Outdated

- **Base branch**: `next` (all PRs should target `next`, not `main`)
- **Node.js**: `22.22.1` (see `.nvmrc`) — supports `.ts` natively via type stripping (no loader needed)
- **Node.js**: `22.22.3` (see `.nvmrc`) — supports `.ts` natively via type stripping (no loader needed)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does that one make sense? Isn't it too user-facing, e.g. contributors work on a React/Vue bug, their agent misconstrues our min supported version and uses Node 22.22 APIs even though we support 22.21?

Comment thread AGENTS.md Outdated
@valentinpalkovic valentinpalkovic merged commit 2221849 into next May 27, 2026
315 of 317 checks passed
@valentinpalkovic valentinpalkovic deleted the valentin/bump-node-22.22.3 branch May 27, 2026 13:55
@github-project-automation github-project-automation Bot moved this from In Progress to Done in Core Team Projects May 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build Internal-facing build tooling & test updates ci:daily Run the CI jobs that normally run in the daily job.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants